package com.ruoyi.system.dto;

import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.time.LocalDateTime;
import java.util.List;

/**
 * 施工预警查询DTO
 * 
 * @author ruoyi
 * @since 2024-01-01
 */
@Data
public class ConstructionWarningQueryDTO {

    /**
     * 项目ID
     */
    private Long projectId;

    /**
     * 项目编号（模糊搜索）
     */
    private String projectCode;

    /**
     * 项目名称（模糊搜索）
     */
    private String projectName;

    /**
     * 项目阶段
     */
    private String projectStage;

    /**
     * 预警类型
     */
    private String warningType;

    /**
     * 预警类型列表（多选）
     */
    private List<String> warningTypes;

    /**
     * 预警等级
     */
    private String warningLevel;

    /**
     * 预警等级列表（多选）
     */
    private List<String> warningLevels;

    /**
     * 处理状态
     */
    private Integer status;

    /**
     * 处理状态列表（多选）
     */
    private List<Integer> statuses;

    /**
     * 处理人ID
     */
    private Long handlerId;

    /**
     * 触发时间范围-开始
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime triggerTimeStart;

    /**
     * 触发时间范围-结束
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime triggerTimeEnd;

    /**
     * 排序字段
     */
    private String orderBy;

    /**
     * 排序方向
     */
    private String orderDirection;

    /**
     * 当前页码
     */
    private Integer pageNum;

    /**
     * 每页显示条数
     */
    private Integer pageSize;
}

